package cn.sciento.farm.devicemanager.api.jsonrpc;

import cn.sciento.farm.devicemanager.dao.entity.DevController;
import cn.sciento.farm.devicemanager.dao.model.PageConditionQuery;
import cn.sciento.farm.devicemanager.dao.model.ResponseMessage;
import com.googlecode.jsonrpc4j.JsonRpcMethod;
import com.googlecode.jsonrpc4j.JsonRpcService;

/**
 * 控制
 */
@JsonRpcService("rpc/hardware.controller")
public interface ControllerJsonApi {


    ResponseMessage update(DevController controller);

    ResponseMessage delete(Long id);

    ResponseMessage list(String eui, Integer landId);

    @JsonRpcMethod("list_all")
    ResponseMessage listAll(String eui ,Integer landId);

    ResponseMessage get(Long id);

    ResponseMessage control(Long controllerId, Integer sw);


    @JsonRpcMethod("list_same_node")
    ResponseMessage listSameNode(Long id);

    @JsonRpcMethod("get_controller_log")
    ResponseMessage getControllerLog(PageConditionQuery data);

}
